class Watch {
  constructor (vm,key,cb) {
    this.vm=vm
    // data中的属性名称
    this.key=key
    this.cb=cb
    //把watch对象记录到Dep类得静态属性target
    Dep.target=this
    this.oldValue=vm[key]
    // 触发get方法，在get方法中会调用addSub
    Dep.target.null
  }
  update () {
    let newValue=this.vm[this.key]
    if (newValue===this.oldValue) {return}
    this.cb(newValue)
  }
}
